package main.java.br.com.projeto.domain.entity;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.MappedSuperclass;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

@MappedSuperclass
public class Nota implements Serializable{	
	/**
	 * 
	 */
	private static final long serialVersionUID = 2974662521694949230L;
	
//	@ManyToOne(fetch=FetchType.EAGER, optional=false)
//	@JoinColumn(nullable=false)
//	private Usuario usuario;
	
	@ManyToOne(fetch=FetchType.EAGER, optional=false)
	@JoinColumn(nullable=false)
	private CondicaoPagamento condicaoPagamento;
	
	@Temporal(TemporalType.TIMESTAMP)
	@Column(nullable=false)
	private Date emissao;
	
	private Double totalNota;
	
//	public Usuario getUsuario() {
//		return usuario;
//	}
//	public void setUsuario(Usuario usuario) {
//		this.usuario = usuario;
//	}
	public CondicaoPagamento getCondicaoPagamento() {
		return condicaoPagamento;
	}
	public void setCondicaoPagamento(CondicaoPagamento condicaoPagamento) {
		this.condicaoPagamento = condicaoPagamento;
	}
	public Date getEmissao() {
		return emissao;
	}
	public void setEmissao(Date emissao) {
		this.emissao = emissao;
	}


	public Double getTotalNota() {
		return totalNota;
	}
	public void setTotalNota(Double totalNota) {
		this.totalNota = totalNota;
	}
	public void diminuiTotalNota(Float valor) {
		this.totalNota -= valor;
	}
}
